<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>

<body>

</body>
<script>
  // //PROMISE 是一个构造函数
  // //需要通过实列化对象来使用
  // // 实列化对象可以使用构造函数的原型对象上面的方法
  // let pro = new Promise(() => { }) //promise
  // console.log(pro);
  // console.log(typeof (pro)); //object
  // console.dir(pro);
  // console.log(Promise);
  // console.log(typeof (Promise)); //function
  // console.dir(Promise);
  // console.log(Promise.prototype);
  // //then catch finally



  // //promise的基本使用
  // const p1 = new Promise((resolve, reject) => {
  //   //Promise内部是同步的，Promise只是用来处理异步的
  //   console.log("promise内部");

  //   //Promise是用来处理异步的，所以把异步代码写在Promise中
  //   setTimeout(() => {
  //     console.log("我是计时器");
  //     //当异步完成以后，只需要调用resolve函数或者reject函数，就可以改变实例化promise对象的状态
  //     // resolve();
  //     // reject();
  //   }, 2000)
  // })
  // console.log("p1", p1);



  const promise = new Promise((resolve, reject) => {
    // 同步调用
    //....code
    
    // 执行异步操作/异步代码
    setTimeout(() => {
        console.log("setTimeout()");
    }, 1000);

});
console.log(promise)


</script>

</html>